A Multiple Hill Climbing Approach to Software Module Clustering
نویسندگان
چکیده
Automated software module clustering is important for maintenance of legacy systems written in a ‘monolithic format’ with inadequate module boundaries. Even where systems were originally designed with suitable module boundaries, structure tends to degrade as the system evolves, making re-modularization worthwhile. This paper focuses upon search-based approaches to the automated module clustering problem, where hitherto, the local search approach of hill climbing has been found to be most successful. In the paper we show that results from a set of multiple hill climbs can be combined to locate good ‘building blocks’ for subsequent searches. Building blocks are formed by identifying the common features in a selection of best hill climbs. This process reduces the search space, while simultaneously ‘hard wiring’ parts of the solution. The paper reports the results of an empirical study that show that the multiple hill climbing approach does indeed guide the search to higher peaks in subsequent executions. The paper also investigates the relationship between the improved results and the system size.
منابع مشابه
A clustering genetic algorithm for software modularisation with a multiple hill climbing approach
Software clustering is a useful technique for software comprehension and re-engineering. In this thesis we examine Software Module Clustering by Hill Climbing (HC) and Genetic Algorithms (GA). Our work primarily addresses graph partitioning using HC and GA. The software modules are represented as directed graphs and clustered using novel HC and GA search techniques. We use a fitness criterion t...
متن کاملFinding Building Blocks for Software Clustering
It is generally believed that good modularization of software leads to systems which are easier to design, develop, test, maintain and evolve [1]. Software clustering using search–based techniques has been well studied using a hill climbing approach [2,4,5,6]. Hill climbing suffers from the problem of local optima, so some improvement may be expected by by considering more sophisticated search-...
متن کاملA Language-Independent Framework for Software Miniaturization
One of the undesired effects of software evolution is the proliferation of unused components, or components unlikely to be used by a given subset of the applications. As a consequence, the size of binaries and libraries tends to grow. One of the major trends of today’s software market is the porting of applications on hand-held devices or, in general, on devices having a limited amount of resou...
متن کاملA language-independent software renovation framework
One of the undesired effects of software evolution is the proliferation of unused components, which are not used by any application. As a consequence, the size of binaries and libraries tends to grow and system maintainability tends to decrease. At the same time, a major trend of today s software market is the porting of applications on hand-held devices or, in general, on devices which have a ...
متن کاملA Novel Hybrid Fuzzy Clustering based approach for the effective Quantification and Analysis of cDNA Microarray Images
In this paper, we propose a hybrid approach for microarray image analysis, which is to quantify the intensity of each spot and locate differentially articulated genes with the aid of image processing and machine learning techniques. Initially we employ a hill-climbing automatic gridding and spot quantification technique, which takes a microarray image (or a sub-grid) as input, and makes no assu...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003